{extend name="layout/default" /}

{block name="head"}
<title>用户列表</title>
{/block}
{block name="content"}
<div class="ok-body">
	<!--模糊搜索区域-->
	<div class="layui-row">
		<!-- <form class="layui-form ok-search-form">
			<div class="layui-form-item">
				<div class="layui-inline">
					<label class="layui-form-label">开始日期</label>
					<div class="layui-input-inline">
						<input type="text" class="layui-input" placeholder="开始日期" autocomplete="off" id="startTime" name="startTime">
					</div>
				</div>
				<div class="layui-inline">
					<label class="layui-form-label">截止日期</label>
					<div class="layui-input-inline">
						<input type="text" class="layui-input" placeholder="截止日期" autocomplete="off" id="endTime" name="endTime">
					</div>
				</div>
				<div class="layui-inline">
					<label class="layui-form-label">用户名</label>
					<div class="layui-input-inline">
						<input type="text" class="layui-input" placeholder="账号" autocomplete="off" name="username">
					</div>
				</div>
				
				<div class="layui-inline">
					<label class="layui-form-label">昵称</label>
					<div class="layui-input-inline">
						<input type="text" class="layui-input" placeholder="昵称" autocomplete="off" name="nickname">
					</div>
				</div>
				<div class="layui-inline">
					<label class="layui-form-label">邮箱</label>
					<div class="layui-input-inline">
						<input type="text" class="layui-input" placeholder="邮箱" autocomplete="off" name="email">
					</div>
				</div>
				
				<div class="layui-inline">
					<label class="layui-form-label">请选择状态</label>
					<div class="layui-input-inline">
						<select name="status" lay-verify="" lay-search>
							<option value="" selected>请选择状态</option>
							<option value="normal">启用</option>
							<option value="stop">停用</option>
						</select>
					</div>
				</div>
				<div class="layui-inline">
					<div class="layui-input-inline">
						<button class="layui-btn" lay-submit="" lay-filter="search">
							<i class="layui-icon">&#xe615;</i>
						</button>
					</div>
				</div>
			</div>
		</form> -->
	</div>
	<!--数据表格-->
	<table class="layui-hide" id="tableId" lay-filter="tableFilter"></table>
	<!--js逻辑-->
</div>
{/block}
{block name="scripts"}
<script>
	layui.use(["element", "jquery", "table", "form", "laydate"], function () {
		let table = layui.table;
		let form = layui.form;
		let laydate = layui.laydate;

		let $ = layui.jquery;


// 		laydate.render({ elem: "#startTime", type: "datetime" });
// 		laydate.render({ elem: "#endTime", type: "datetime" });

		let userTable = table.render({
			elem: '#tableId',
			url: '{:url("index")}',
			limit: 20,
			page: true,
			toolbar: true,
			toolbar: "#toolbarTpl",
			height: 'full',
			cols: [[
				{ type: "checkbox", fixed: "left" },
				{ field: "id", title: "ID", width: 100, sort: true },
				{ field: "username", title: "用户名", width: 100 },
				{ field: "authgroup", title: "角色组", width: 100 },
				{ field: "nickname", title: "昵称", width: 100 },
				{ field: "avatar", title: "头像", width: 100, templet: "#logoTpl" },
				{ field: "email", title: "邮箱", width: 200 },
				{ field: "status", title: "状态", width: 100, templet: "#statusTpl" },
				{ field: "createtime_text", title: "创建时间", width: 150 },
				{ title: "操作", align: "center", fixed: "right", templet: "#operationTpl" }
			]],
			done: function (res, curr, count) {
				console.info(res, curr, count);
			}
		});

		form.on("submit(search)", function (data) {
			userTable.reload({
				where: data.field,
				page: { curr: 1 }
			});
			return false;
		});

		table.on("toolbar(tableFilter)", function (obj) {
			switch (obj.event) {
				case "batchEnabled":
					batchEnabled();
					break;
				case "batchDisabled":
					batchDisabled();
					break;
				case "batchDel":
					batchDel();
					break;
				case "add":
					add();
					break;
			}
		});

		table.on("tool(tableFilter)", function (obj) {
			let data = obj.data;
			switch (obj.event) {
				case "edit":
					edit(data);
					break;
				case "del":
					del(data.id);
					break;
			}
		});

		function batchEnabled() {
		 let data = table.checkStatus('tableId').data;
                    if (data.length === 0) {
                        layer.msg("未选中数据", {
                            icon: 3,
                            time: 1000
                        });
                        return false;
                    }
                    var idsStr = ""
                    var hasCheck = table.checkStatus('tableId')
                    var hasCheckData = hasCheck.data
                    if (hasCheckData.length > 0) {
                        $.each(hasCheckData, function (index, element) {
                            //idsStr.push(element.id)
                            idsStr += element.id + ",";
                        })
                    }
			layer.confirm("确定要批量启用吗？", function (index) {
				layer.close(index);
				if (idsStr) {
					$.ajax(
					    {
					    url:"{:url('setNormal')}", 
					    type:"put", 
					    data:{ idsStr: idsStr },
					    }).done(function (response) {
						if (response.code == 1) {
							console.log(response);
						layer.msg(response.msg,{icon:1,time:1000},function(){
							location.reload();})
						} else {
						layer.msg(response.msg,{icon:2,time:1000},function(){

							})
						}
					}).fail(function (error) {
						console.log(error)
					});
				}
			});
		}

		function batchDisabled() {
			  let data = table.checkStatus('tableId').data;
                    if (data.length === 0) {
                        layer.msg("未选中数据", {
                            icon: 3,
                            time: 1000
                        });
                        return false;
                    }
                    var idsStr = ""
                    var hasCheck = table.checkStatus('tableId')
                    var hasCheckData = hasCheck.data
                    if (hasCheckData.length > 0) {
                        $.each(hasCheckData, function (index, element) {
                            //idsStr.push(element.id)
                            idsStr += element.id + ",";
                        })
                    }
			layer.confirm("确定要批量停用吗？", function (index) {
				layer.close(index);
				if (idsStr) {
					$.ajax(
					    {
					        url:"{:url('setStop')}", 
					        type:"put", 
					        data:{ idsStr: idsStr },
					        }).done(function (response) {

						if (response.code == 1) {
							console.log(response);
							 layer.msg(response.msg,{icon:1,time:1000},function(){
							location.reload();});
						} else {
							 layer.msg(response.msg,{icon:2,time:1000},function(){

							})
						}
					}).fail(function (error) {
						console.log(error)
					});
				}
			});
		}

		function batchDel() {
		let data = table.checkStatus('tableId').data;
                    if (data.length === 0) {
                        layer.msg("未选中数据", {
                            icon: 3,
                            time: 1000
                        });
                        return false;
                    }
                    var idsStr = ""
                    var hasCheck = table.checkStatus('tableId')
                    var hasCheckData = hasCheck.data
                    if (hasCheckData.length > 0) {
                        $.each(hasCheckData, function (index, element) {
                            //idsStr.push(element.id)
                            idsStr += element.id + ",";
                        })
                    }
			layer.confirm("确定要批量删除吗？", function (index) {
				layer.close(index);
				if (idsStr) {
					$.ajax({

					        url:'delete',
                            data:{idsStr: idsStr},
                            dataType: 'json',
                            type: 'delete',

			           	}).done(function (response) {
						//console.log(response);
						//okUtils.tableSuccessMsg(response.msg);
						if (response.code == 1) {
							console.log(response);
									layer.msg(response.msg, {
                                        icon: 1,
                                        time: 1000
                                    }, function() {
                                    	//table.reload('tableId');//奇怪用这个表格不刷新
                                    	location.reload();
                                    });
							//location.reload();
						} else {
								layer.msg(response.msg, {
                                        icon: 2,
                                        time: 1000
                                    },  function () {

							})
						}
					}).fail(function (error) {
						console.log(error)
					});
				}
			});
		}

		function add() {
			layer.open(
			    
			    {
			        
			            type: 2,
                        maxmin: true,
                        title: '添加用户',
                        shade: 0.1,
                        area: ['90%', '90%'],
                        content: '{:url('add')}'
			        
			    }, function () {
				userTable.reload();
			})
		}

		function edit(data) {
			layer.open(	 {
			        
			            type: 2,
                        maxmin: true,
                        title: '更新',
                        shade: 0.1,
                        area: ['90%', '90%'],
                        content: 'edit?id=' + data.id,
			        
			    },
			function (layero) {
				//let iframeWin = window[layero.find("iframe")[0]["name"]];
				//iframeWin.initForm(data);
			}, function () {
				userTable.reload();
			})
		}

		function del(id) {
			layer.confirm("确定要删除吗？", function () {
			$.ajax(
				    
				    {
				    url:"{:url('delete')}", 
				    type:"delete", 
				    data:{ idsStr: id },
				    
				    }).done(function (response) {


					if (response.code == 1) {
						console.log(response);
						layer.msg(response.msg,{icon:1,time:1000},function(){
						   	userTable.reload();

						})
					} else {
						layer.msg(response.msg,{icon:2,time:1000},function(){

						})
					}

				}).fail(function (error) {
					console.log(error)
				});
			})
		}
	})
</script>
<!-- 头工具栏模板 -->
<script type="text/html" id="toolbarTpl">
	<div class="layui-btn-container">
		<button class="layui-btn layui-btn-sm layui-btn-normal" lay-event="batchEnabled">批量启用</button>
		<button class="layui-btn layui-btn-sm layui-btn-warm" lay-event="batchDisabled">批量停用</button>
		<button class="layui-btn layui-btn-sm layui-btn-danger" lay-event="batchDel">批量删除</button>
		<button class="layui-btn layui-btn-sm" lay-event="add">添加用户</button>
	</div>
</script>
<!-- 行工具栏模板 -->
<script type="text/html" id="operationTpl">
<button class="pear-btn pear-btn-primary pear-btn-sm" lay-event="edit"><i class="layui-icon layui-icon-edit"></i></button>
<button class="pear-btn pear-btn-danger pear-btn-sm" lay-event="del"><i class="layui-icon layui-icon-delete"></i></button>
</script>

<script type="text/html" id="statusTpl">
	{{#  if(d.status == 'normal'){ }}
	<span class="layui-btn layui-btn-normal layui-btn-xs">启用</span>
	{{#  } else if(d.status != 'normal') { }}
	<span class="layui-btn layui-btn-warm layui-btn-xs">停用</span>
	{{#  } }}
</script>

<script type="text/html" id="roleTpl">
	{{#  if(d.role == 0){ }}
	<span class="layui-btn layui-btn-normal layui-btn-xs">超级会员</span>
	{{#  } else if(d.role == 1) { }}
	<span class="layui-btn layui-btn-warm layui-btn-xs">普通用户</span>
	{{#  } }}
</script>

<script type="text/html" id="logoTpl">
	<img src="{{d.avatar}}" style="width: auto;height: 100%;"/>
</script>
{/block}